/*
 * EPUB_EmbeddedFile.h
 *
 *  Created on: Apr 18, 2011
 *      Author: volodymyr
 */

#ifndef EPUB_EMBEDDEDFILE_H_
#define EPUB_EMBEDDEDFILE_H_

#include <ut_bytebuf.h>
#include <ut_string.h>
#include <ut_string_class.h>

#include <boost/shared_ptr.hpp>
class EPUB_EmbeddedFile;
typedef boost::shared_ptr<EPUB_EmbeddedFile> EPUB_Shared_EmbeddedFile;


enum EmbeddedFileType
{
	EFT_Image
};
/**
 * Class that represents file which could be embedded into EPUB document
 * E.g. images
 */
class EPUB_EmbeddedFile
{
public:
	EPUB_EmbeddedFile(const UT_UTF8String &name,const UT_ByteBuf *pData,
			EmbeddedFileType fileType);
	UT_UTF8String getName() const;
	const UT_ByteBuf * getData();
	EmbeddedFileType getFileType();
private:
	const UT_ByteBuf *m_pData;
	UT_UTF8String m_name;
	EmbeddedFileType m_fileType;
};

#endif /* EPUB_EMBEDDEDFILE_H_ */
